/* Copyright (c) 2025 Huawei Technologies Co., Ltd.
 * openUBMC is licensed under Mulan PSL v2.
 * You can use this software according to the terms and conditions of the Mulan PSL v2.
 * You may obtain a copy of Mulan PSL v2 at:
 *          http://license.coscl.org.cn/MulanPSL2
 * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
 * EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
 * MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
 * See the Mulan PSL v2 for more details.
 */

#ifndef __MEASUREMENT_H__
#define __MEASUREMENT_H__

#include "common.h"

class Measurement {
public:
    uint8_t  index;
    string   hashAlgorithm;
    string   measurementType;
    string   measurement;
    uint64_t lastUpdated;
    bool     partOfSummaryHash;
    string   securityVersionNumber;

    Measurement(uint8_t index, const string& hashAlgorithm, const string& measurementType, const string& measurement,
        uint64_t lastUpdated, bool partOfSummaryHash, const string& securityVersionNumber)
        : index(index), hashAlgorithm(hashAlgorithm), measurementType(measurementType), measurement(measurement),
        lastUpdated(lastUpdated), partOfSummaryHash(partOfSummaryHash), securityVersionNumber(securityVersionNumber) {};
    ~Measurement() = default;
};

#endif // __MEASUREMENT_H__